<?php

namespace App\Services;

use OSS\Core\OssException;
use OSS\OssClient;

class Upload
{
    /**
     * @param $file
     * @param $filePath
     * @return array|string
     * 阿里云的云存储
     */
    public function OssLoad($file, $filePath)
    {

        // 阿里云主账号AccessKey拥有所有API的访问权限，风险很高。强烈建议您创建并使用RAM账号进行API访问或日常运维，请登录RAM控制台创建RAM账号。
        $accessKeyId = config('oss.AccessKeyId');
        $accessKeySecret = config('oss.AccessKeySecret');
        // Endpoint以杭州为例，其它Region请按实际情况填写。
        $endpoint = config('oss.region');
        // 设置存储空间名称。
        $bucket = config('oss.bucket');
        // 设置文件名称。
        $object = date('Y-m-d', time()) . 'sale_house/' . $file;
        // <yourLocalFile>由本地文件路径加文件名包括后缀组成，例如/users/local/myfile.txt。
        try {
            $ossClient = new OssClient($accessKeyId, $accessKeySecret, $endpoint);

            $ossClient->uploadFile($bucket, $object, $filePath);

            return 'http://train-house.oss-cn-shanghai.aliyuncs.com/' . $object;

        } catch (OssException $e) {
            return ['code' => 202, 'msg' => $e->getMessage(), 'data' => ''];
        }
    }
}
